package pe.edu.upc.e41a.javasoft.service;

import java.util.List;
import org.springframework.roo.addon.layers.service.RooService;
import pe.edu.upc.e41a.javasoft.domain.TipoPersona;

@RooService(domainTypes = { pe.edu.upc.e41a.javasoft.domain.TipoPersona.class })
public interface TipoPersonaService {

	public abstract long countAllTipoPersonas();


	public abstract void deleteTipoPersona(TipoPersona tipoPersona);


	public abstract TipoPersona findTipoPersona(Integer id);
	public abstract TipoPersona obtenerTipoPersona(String idTipoPersona);


	public abstract List<TipoPersona> findAllTipoPersonas();


	public abstract List<TipoPersona> findTipoPersonaEntries(int firstResult, int maxResults);


	public abstract void saveTipoPersona(TipoPersona tipoPersona);

	
	//DESDE PROYECTO SCV
	public abstract TipoPersona updateTipoPersona(TipoPersona tipoPersona);
	
	public String insertarTipoPersona(TipoPersona tipoPersona);

	public String actualizarTipoPersona(TipoPersona tipoPersona);

	public String eliminarTipoPersona(TipoPersona tipoPersona);
	
	///////////////////////////////////////////////////////
	public abstract long contarTipoPersonas();
	public abstract List<TipoPersona> buscarTodoTipoPersonas();
	public abstract TipoPersona buscarTipoPersonaPorCodigo(Integer codigo);
	public abstract TipoPersona buscarTipoPersonasPorDescripcionExacta(String descripcion) ;
    public abstract List<TipoPersona> buscarTipoPersonasPorDescripcionParecida(String descripcion);

}
